home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-09-17 | 147.8 KB | 2,375 lines |
- _______
- ____|__ | (tm)
- --| | |-------------------
- | ____|__ | Association of
- tm | | |_| Shareware
- VMiX 386 Version 2.90 |__| o | Professionals
- ----------------------- -----| | |---------------------
- |___|___| MEMBER
- Copyright (c) 1985-1993
-
- Commercial Software Associates
- Post Office Box 36 BBS (714) 720-1139 (24 Hrs.)
- Corona del Mar, California 92625 VOICE (714) 720-1214 (8-6pm PDT)
-
- _______________________________________________________________
- | |
- | WHAT IS VMiX? |
- | ------------- |
- | |
- | VMiX is a multitasking and multiuser environment for |
- | IBM PC's (PC, XT, AT, PS/2, EISA) and compatibles. |
- | |
- | Version 2.90 configures itself to your processor. If you |
- | have an 8088 or 8086, then your applications must share |
- | the up to 570 Kbytes available after VMiX loads in low |
- | memory. |
- | |
- | If you have an 80286, then VMiX can multitask in low |
- | conventional memory or it can task switch applications |
- | to 286 extended memory. VMiX can not execute tasks in |
- | 286 extended memory. Swapped tasks can be swapped back |
- | from 286 extended memory automatically for a timeslice |
- | of the processing or they can remain suspended until |
- | reactivated by the user. |
- | |
- | If you have an 80386/486, VMiX will multitask in extended |
- | memory. It will execute each task in virtual 8086 Mode, |
- | with protected mode pagging, virtualized video and key- |
- | board, mapping a new 640 Kbytes to each new task. With |
- | DOS 6.0 relocated to high memory and VMiX relocated to |
- | upper memory above video ram, up to 600Kb can be used by |
- | each application. |
- | |
- | Multitasking is supported at the console, in windows or |
- | full screen(s). All tasks execute concurrently, at the |
- | console, remote terminal, or at the console of any VMiX |
- | host, while running at a serially linked remote VMiX |
- | server. Since the console video display can be virtua- |
- | lized, you can switch between screens (each with multiple |
- | windows). If you do not like windows at your console or |
- | flipping screens, you can choose to use terminals or PC's |
- | attached to the COMM ports. |
- | |
- | The VMiX environment uses the best from DOS and UNIX in |
- | its implementation of the user control shell and multi- |
- | tasking. The user has a choice between two interfaces: |
- | the VMiX shell, which is transparent to the DOS shell |
- | (you get both sets of commands), or the VMiX pull-down |
- | menus, a user friendly multi-threaded environment. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | Applications that DO NOT WRITE directly to the video, |
- | will display correctly at a terminal in all VMiX modes. |
- | Applications that WRITE directly to the video, can be |
- | virtualized at the 386 console or at terminals (if using |
- | VMiX in 386 Mode, with VMiX's VT-100 or ANSI terminal |
- | emulation). Any commercially available remote console |
- | utility can be used in other VMiX modes to handle direct |
- | video writes. |
- | |
- | VMiX.INI is a text autoconfigure file that allows start- |
- | up scripts, remote login passwords, and remote login |
- | scripts to be specified by the system administrator. |
- | |
- | VMiX is fully compatible with DOS 3.1 through 6.00 |
- | VMiX can also be used with DR-DOS or X-DOS. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | WHAT IS AHEAD FOR VMiX? |
- | |
- | - A DPMI interface, so that the VMiX protected mode |
- | driver can be loaded in the CONFIG.SYS file and not |
- | with the multitasker VM_BOOT.EXE. |
- | - A file system distributed among several VMiX hosts, |
- | allowing sharing of remote hard disks. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | VMiX is not free public domain software. |
- | It is copyrighted commercial software distributed as |
- | 'TRY BEFORE PURCHASE', shareware software. |
- | |
- | |
- | You may copy VMiX freely for non-commercial distribution, |
- | provided you follow the restrictions listed below in the |
- | LIMITED SHAREWARE LICENSE: |
- | |
- | |
- | *** COPYRIGHT NOTICE *** |
- | |
- | Copyright (c) 1985-1993 |
- | by: J. Anthony Borras |
- | All Rights Reserved |
- | |
- | |
- | LIMITED SHAREWARE LICENSE |
- | |
- | - VMiX 386 may be copied for others to |
- | try, subject to the following copying |
- | restrictions specified by this time |
- | limited license: |
- | |
- | All copies distributed to others |
- | must include a copy of the Copyright |
- | Notice, the Limited Shareware License, |
- | Disclaimer of All Warranties and |
- | Liabilities, and the Software License |
- | Agreement. These documents are ALREADY |
- | incorporated into file TECHREF.DOC in |
- | the distribution archive VMIX???.EXE. |
- | |
- | A registration fee of $59 is required |
- | from personal users (up to 3 CPU's) as |
- | a condition of continued use of the |
- | program beyond a trial usage period of |
- | 30 days. |
- | |
- | - The party agrees that unauthorized |
- | usage under this agreement will cause |
- | great damage to the licensor, Commercial |
- | Software Associates. |
- | |
- | |
- | Purchase Price/Registration....... $59. |
- | |
- | SOURCE license ................... CALL |
- | |
- | SITE license ..................... CALL |
- | |
- | UPGRADE Version 2.XX ............ $20. |
- | |
- | California residents add 7.75% sales tax |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | WHAT IS UNIQUE ABOUT VMiX? |
- | -------------------------- |
- | |
- | VMiX is supported shareware, it has undergone over 42 |
- | releases in the last 8 years, each with new and enhanced |
- | features. |
- | |
- | VMiX is A COMMAND LINE MULTITASKER or you can make use of |
- | its pull-down menus shell, VW.EXE. The startup program |
- | has a '/quiet' option to totally emulate a multitasking |
- | DOS prompt, with no user interface modifications, except |
- | that the VMiX commands will also be available. |
- | |
- | VMiX provides an easy to install and operate environment |
- | that can be used to multitask DOS on 8086 computers. It |
- | can also be used to task switch applications to extended |
- | memory on 80286 AT's. VMiX's native environment is the |
- | 80386, on those computers, use of extended memory and |
- | emulated expanded memory is automatic. |
- | |
- | VMiX allows 2 or more computers running VMiX to be linked |
- | as a distributed processing environment, where different |
- | client machines can execute programs in other servers. |
- | VMiX also provides remote modem access to any of your |
- | multiuser PC hosts. |
- | |
- | If you can execute your applications from DOS, they are |
- | already installed for VMiX. VMiX does not use PIF or |
- | other types of application configuration files. |
- | |
- | |
- | APPLICATION SCREEN HANDLING |
- | logged-in |
- | do do -W terminal |
- | -------------------------------------------- |
- | 8086 Mode Text Mode Text Mode Text Mode |
- | Graphics Mix Txt/Grphcs - |
- | BIOS Video BIOS Video BIOS Video |
- | - - ** Direct Video |
- | -------------------------------------------- |
- | 286 Mode Text Mode Text Mode Text Mode |
- | Graphics Mix Txt/Grphcs - |
- | BIOS Video BIOS Video BIOS Video |
- | - - ** Direct Video |
- | -------------------------------------------- |
- | 386 Mode Text Mode Text Mode Text Mode |
- | Graphics Mix Txt/Grphcs - |
- | BIOS Video BIOS Video BIOS Video |
- | Direct Video Direct Video Direct Video |
- | |
- | ** VMiX will handle programs executed from a terminal (COMM |
- | port) that do direct video writes only in 386 Mode. |
- | In other modes, you will need to use VMiX in conjunction |
- | with a program like 'Remote Console'tm (see below). |
- | |
- | The VMiX interface is layered, to protect the casual user |
- | who just wants to get maximum utility and does not need |
- | or wants to learn the full system. For the advanced user,|
- | VMiX provides an internal 'debug' shell, which can be |
- | coupled with a DOS debugger, as a concurrently executing |
- | VMiX task, to examine other live applications. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | HOW TO INSTALL MY APPLICATIONS? |
- | ------------------------------- |
- | |
- | If you can execute your applications from DOS, they |
- | are already installed for VMiX. VMiX does not use PIF |
- | or other types of application configuration files. |
- | |
- | Applications that write directly to the screen can |
- | co-exist with other applications at the console, but |
- | will not display properly when running VMiX in non-386 |
- | computers. On 286 and 8086 PCs, applications that write |
- | DIRECT TO VIDEO can bleed-through to other tasks also |
- | running at the console, and will not display correctly |
- | when using a remote terminal. On 286 and 8086 PCs, you |
- | might be able to get around this problem by setting a |
- | different video page with the command 'set video -p', |
- | before starting the application. |
- | |
- | VMiX will multitask and provide remote user support on |
- | any 100% IBM compatible, for any processor and installed |
- | memory configuration (See StartUp System Options, below). |
- | |
- | If TOTAL system memory is less than 3 Megabytes, only the |
- | text portions of the Video Memory will be virtualized and |
- | protected for each task (to allow as many text tasks as |
- | possible to be executed with limited memory resources). |
- | Consequently, unless you start a new task after the parent|
- | console is already set to graphics mode, new tasks that |
- | set the video to graphics mode will NOT have their video |
- | protected, when you switch the display between multiple |
- | applications. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | HOW MUCH MEMORY WILL REMAIN AFTER VMiX IS INSTALLED? |
- | ---------------------------------------------------- |
- | |
- | On a 640Kb memory 8088 PC or 80286 AT with DOS 6.0 and |
- | no low memory installed TSR's, there will remain 470Kb |
- | to 576Kb of memory for applications. In text modes, on |
- | EGA/VGA equipped systems, VMiX can be told to fill memory |
- | above 640Kb with 96Kb of additional program space. |
- | |
- | On the 80386, each task gets it's own 640Kb from your |
- | extended memory pool, however only 470Kb to 600Kb will be |
- | free for each task, depending on your DOS configuration |
- | and if VMiX has been relocated to upper memory. |
- | |
- | How big a program you can run and multitask under VMiX |
- | will depend on your configuration (FILES, BUFFERS, etc.) |
- | and the size of VMiX's footprint in DOS space. Normally, |
- | VMiX has a DOS resident size of 125Kb, but if VMiX has |
- | been relocated to upper memory this size is only 38Kb. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | HOW DO I VALIDATE THAT VMIX IS WORKING CORRECTLY? |
- | ------------------------------------------------- |
- | |
- | To test VMiX, we recommend that you perform the two |
- | tests below: |
- | |
- | ----- TEST 1: Validates that VMiX itself is working |
- | correctly. |
- | |
- | invoke VMiX as follows: (from the directory where |
- | you copied VM_BOOT.EXE) |
- | |
- | VM_BOOT do /set |
- | |
- | and press ENTER |
- | This will start 2 tasks: |
- | the startup main window, |
- | where the keyboard will |
- | remain unless you press |
- | Shift-Tab, and |
- | a VMiX debugger task |
- | displaying information |
- | about the 'set' command. |
- | If both windows display activity, the TEST PASSED.|
- | From the root window type 'quit' and press ENTER |
- | to exit VMiX. |
- | |
- | |
- | ----- TEST 2: Validates that VMiX, your version of DOS, |
- | and your system's ROM BIOS, get along fine. |
- | |
- | invoke VMiX as follows: (from the directory where |
- | you copied VM_BOOT.EXE) |
- | |
- | VM_BOOT do dir c: / set process -d1 / type c:\autoexec.bat |
- | |
- | and press ENTER |
- | This will start 2 tasks: |
- | the startup main window, |
- | displaying autoexec.bat |
- | (where the keyboard focus|
- | will remain) and a second|
- | windowed task doing your |
- | directory. |
- | |
- | 'set process -d1' just adds a 1 second delay. |
- | If both windows display activity, the TEST PASSED.|
- | From the root window type 'quit' and press ENTER |
- | to exit VMiX. |
- | |
- | |
- | ----------------------------- |
- | |
- | IN THE EVENT THAT VMiX FAILS TO BOOT OR THE SCREEN HANGS |
- | DURING THE TESTS, CHECK THE SECTION 'VMiX STARTUP PROBLEMS',|
- | GIVEN BELOW. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | HOW TO INSTALL VMiX? |
- | -------------------- |
- | |
- | For more detailed information, see 'GENERAL INSTRUCTIONS',|
- | THE EASY WAY' and 'THE ADVANCED WAY', given below. |
- | |
- | VMiX is easy to install. Simply copy the executable |
- | files in the VMiX archive to your directory, include the |
- | install directory in your PATH, remove other extended |
- | memory managers from your CONFIG.SYS and execute the boot |
- | module VM_BOOT.EXE |
- | |
- | If you want the VMiX interface to look just like DOS, |
- | start VMiX with the /quiet switch in the start command: |
- | |
- | C:\VMiX> VM_BOOT /q etc. ... |
- | |
- | We recommend you start VMiX, at least once, without the |
- | /quiet option, to see the additional information normally |
- | reported when VMiX boots with its normal interface. |
- | |
- | |
- | If VMiX FAILS TO START correctly on your computer, you |
- | can use several other startup options. |
- | |
- | 'VM_BOOT 8086' will force real mode on 80286/386/486 PC's.|
- | |
- | 'VM_BOOT 286' will force 80286 VMiX Mode on 80386/486 |
- | computers. |
- | |
- | 'VM_BOOT low' or VM_BOOT low 286' will inhibit relocation|
- | of portions of VMiX to extended memory. |
- | |
- | 'VM_BOOT ems=ffff' will inhibit VMiX from relocating its |
- | stacks to upper memory. |
- | |
- | Use of these options might allow VMiX to execute in your |
- | environment. |
- | |
- | Refer to the section below 'VMiX STARUP PROBLEMS' for |
- | additional problem advice. |
- | |
- | You can customize how VMiX starts by including other |
- | command arguments in the VM_BOOT command line, from DOS. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | RELOCATING VMiX to UPPER MEMORY (386/486) |
- | ----------------------------------------- |
- | |
- | Your system must be at least a 386 computer and must |
- | have a minimum of 144 Kbytes of unused space above the |
- | video ROM (C800 - EFFF) and before the system ROM. |
- | |
- | Start VMiX with the command line: |
- | |
- | C:\VMiX\> VM_BOOT ems=ffff/loadup vm_boot etc. ... |
- | |
- | OR, IF USING THE SHAREWARE VERSION: |
- | |
- | C:\VMiX\> VM_B ems=ffff/loadup vm_b etc. ... |
- | |
- | etc. refers to other valid VMiX commands you |
- | wish to pass to the relocated system. |
- | |
- | VMiX will start and load a second copy of |
- | itself to upper memory, then the first copy |
- | will shutdown, return to the DOS prompt and |
- | automatically restart the upper memory copy. |
- | |
- | The included sample batch file, GOLOADUP.BAT, will |
- | start VMiX and relocate it, automatically. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | RECOMMENDED CONFIG.SYS (file contents for MS-DOS 6.0) |
- | ---------------------- |
- | |
- | SHELL = C:\COMMAND.COM /P /E:512 |
- | FCBS = 0,0 (Optional) |
- | STACKS = 9,192 (Optional, Do not set to 0,0) |
- | DOS = HIGH (Do not use the UMB option!) |
- | BUFFERS = 15 (Why use more?) |
- | FILES = 20 (More than 20, if apps need it.) |
- | LASTDRIVE = H (Optional, set your last drive here) |
- | DEVICE = HIMEM.SYS |
- | DEVICE = MOUSE.SYS /2 (Mouse Driver on COM2, if any...) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | RECOMMENDED CONFIG.SYS (file contents for DR-DOS 6.0) |
- | ---------------------- |
- | |
- | SHELL = C:\COMMAND.COM /P /E:512 |
- | FCBS = 0,0 (Optional) |
- | HIDOS = ON |
- | BUFFERS = 15 (Why use more?) |
- | FILES = 20 (More than 20, if apps need it.) |
- | LASTDRIVE = H (Optional, set your last drive here) |
- | DEVICE = HIDOS.SYS |
- | DEVICE = MOUSE.SYS /2 (Mouse Driver on COM2, if any...) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | G E N E R A L I N S T R U C T I O N S |
- | |
- | 1) BEFORE USING VMiX 386, you must copy |
- | the self-extracting archive from the |
- | Shipping Diskette to your system |
- | hard disk (or 1.2+ MBYTE floppy). |
- | |
- | NEVER use the Shipping Diskette to |
- | actually run VMiX 386. Use the |
- | copies that you have made from it |
- | and keep the Master Disk in a cool, |
- | secure place. |
- | |
- | STEP 1: Insert the Shipping Diskette in Drive A: |
- | |
- | STEP 2: Make a VMiX subdirectory in your hard disk. |
- | |
- | md \VMiX |
- | cd \VMiX |
- | |
- | |
- | STEP 3: Copy A:*.* to C:\VMiX |
- | |
- | STEP 4: Execute the archive to extract the files. |
- | |
- | STEP 5: Verify that the CONFIG.SYS file, in your |
- | boot directory, includes the following 2 |
- | lines and no DEVICE= lines that invoke an |
- | extended memory driver like 386MAX.SYS, |
- | QEMM.SYS, EMM386.SYS or SMARTDRV.SYS. |
- | Also verify that you are NOT using an |
- | ANSI.SYS driver. |
- | |
- | BUFFERS = 15 (or more) |
- | FILES = 20 (or more) |
- | |
- | |
- | 2) TO EXECUTE THE VMiX 386 PROGRAM you |
- | will need MS-DOS Version 3.10 or |
- | above, and 256Kb of memory. A color |
- | graphics card, VGA is recommended |
- | for the console display. |
- | |
- | If you have a Monochrome Adapter, |
- | VMiX will sense it. |
- | |
- | VMiX 386 does not need to operate in |
- | protected mode in all configurations. |
- | It will execute properly in PC's |
- | with 8088, 8086, or 286 processors. |
- | |
- | Start VMiX by typing: |
- | |
- | C:\VMiX> VM_BOOT <ENTER> |
- | |
- | After VMiX starts, typing a '?' will |
- | display all the available commands. |
- | |
- | For other startup methods refer to |
- | 'THE EASY WAY TO START VMiX' section, |
- | given below. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | TYPE: debug <ENTER> |
- | (the prompt will change to: - ) |
- | |
- | Next, try 'set' or 'exam' and VMiX |
- | VMiX will display how to complete |
- | the command. VMiX will prompt for |
- | most command line arguments, not |
- | included in the command line: |
- | |
- | TYPE: set video -m<ENTER> |
- | to see the video modes available, |
- | |
- | TYPE: set term -t<ENTER> |
- | to see the terminals supported. |
- | |
- | From the - prompt, type 'quit' to |
- | to return to the root shell. |
- | |
- | NOTE: THE DEBUGGER SHELL IS NOW |
- | OBSOLETE, YOU CAN ENTER THE COMMANDS |
- | SHOWN ABOVE DIRECTLY FROM THE ROOT |
- | SHELL !!! |
- | |
- | 3) To start VMiX 386 with the pull-down |
- | menus interface: |
- | |
- | Set the PATH for the VMiX utilities: |
- | |
- | C:\VMiX> PATH = C:\VMiX <ENTER> |
- | |
- | Start VMiX by typing either: |
- | |
- | C:\VMiX> VM_BOOT VW <ENTER> (for color) |
- | |
- | C:\VMiX> VM_BOOT VW -m <ENTER> (for BW mono) |
- | |
- | or, |
- | |
- | C:\VMiX> VM_BOOT VW -bw <ENTER> (for BW mono) |
- | |
- | When VMiX starts, the top screen line |
- | will display the available menus. |
- | Move to the desired menu by pressing |
- | right or left-arrow keys. Select a |
- | menu by pressing the down-arrow key, |
- | <ENTER>, or by typing the CAPITALIZED |
- | letter of the menu name. |
- | |
- | Select a menu option by first moving |
- | to the desired item with the down- |
- | arrow and press <ENTER> to execute |
- | the option. Exit from the VW utility |
- | or pull-down menu with the <Esc> key. |
- | |
- | Pull-down options that display an ->, |
- | indicate an additional pull-down, |
- | reachable by pressing <ENTER> or the |
- | right-arrow key. |
- | |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | When using a NON-ANSI terminal to run |
- | VW.EXE, first use <Ctrl><F> to enable |
- | function key emulation, then <Ctrl><L> |
- | becomes right arrow, backspace will |
- | act as left-arrow, <Ctrl><J> and |
- | <Ctrl><K> will act as down-arrow and |
- | up-arrow correspondingly. |
- | |
- | Pressing the [Home] key, while in VW, |
- | will cause a repaint of the VW menu. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | THE EASY WAY TO START VMiX (Using VMiX.INI) |
- | -------------------------- |
- | |
- | First set your CONFIG.SYS file, so that no device drivers |
- | are active that would set the processor to protected mode |
- | like SMARTDRV or EMM386 or QEMM or 386MAX etc. |
- | Remove ANSI.SYS, if it is also present, and use the VMiX |
- | provided Ansi driver VMANSI.COM in your AUTOEXEC.BAT file. |
- | |
- | Set your path so that the VMiX directory is included: |
- | |
- | C:\VMIX> PATH = C:\;C:\VMIX;(all your apps .EXE paths HERE) |
- | |
- | VMiX can make use of a VMiX.INI file to configure itself. |
- | We have enclosed sample batch files that will allow you to |
- | start VMiX in any of 4 typical configurations. |
- | |
- | The following batch files copy one of the sample .INI files |
- | to VMiX.INI and start VM_BOOT.EXE to load the system. |
- | |
- | gomenus.bat - starts the command shell and a second shell |
- | running a pull-down menus interface to VMiX |
- | (press Shift-Tab to switch the video/Kbd |
- | between the two tasks). |
- | |
- | Configuration explanation of the [startup] section |
- | in SAMPLE1.INI: |
- | |
- | 'set re -x' NO multiusers at your COMM ports, |
- | disables remote logins, so as not to |
- | interfere with what you already have |
- | connected at any of the ports. If you |
- | want multiusers, delete this command. |
- | |
- | 'set vi -s' Display a status line, so you can |
- | determine the name of the foreground |
- | task (where the kbd is). |
- | |
- | 'set sys -c' Enable a software cursor, so you can |
- | see where you are, even if another |
- | task disables the hardware cursor or |
- | your task has gone to sleep. |
- | |
- | 'vw' Run the Pull-Down Menu shell, from |
- | where to start other VMiX DOS shells. |
- | With VW, you will usually start a new |
- | shell, from where to start your multi- |
- | tasking application (or you can launch |
- | your applications directly). |
- | |
- | gomtdos.bat - starts the command shell and a second shell |
- | running a pull-down menus interface to VMiX |
- | (however, a DOS look and feel is used). |
- | |
- | goremote.bat - starts the command shell at the console and |
- | configures VMiX to accept user logins at |
- | all COMM ports (2400 baud). |
- | |
- | goloadup.bat - starts VMiX in low memory, to load the |
- | memory manager, then relocates VMiX above |
- | 640KB to conserve DOS area space. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | THE ADVANCED WAY TO START VMiX (Command line multitasker) |
- | ------------------------------ |
- | |
- | C:\VMIX> PATH = C:\;C:\VMIX; (all your apps .EXE paths here) |
- | |
- | C:\VMIX> VM_BOOT /quiet/set sys -c |
- | |
- | |
- | Configuration explanation: |
- | |
- | Before you start VMiX, set your DOS path for all the antici- |
- | pated executables you wish to multitask. |
- | |
- | |
- | 'quiet' Optional, disables all start messages and |
- | retains DOS's look and feel. |
- | 'set sys -c' Enable a software cursor, so you can see where |
- | you are, even if another tasks disables the |
- | hardware cursor or your task has gone to sleep.|
- | |
- | After VMiX starts, you would use the 'set remote -l ????', |
- | 'set baud -c ????' and maybe 'set terminal -t ???? to con- |
- | figure logins via the COMM ports. These commands could |
- | also have been added to the startup line above or could have|
- | been edited into your copy of the VMiX.INI file. The system|
- | defaults are COM1 (9600 Baud) for the remote link and ANSI/ |
- | VT-100 terminal emulation. |
- | |
- | To start multitasking applications, you will normally use |
- | the 'do [-W]' command or you can press Shift-ENTER or |
- | Shift-Shift-ENTER after a command, to start it multitasking.|
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | USING YOUR COMM PORTS for remote user logins |
- | --------------------- |
- | ----- if your printer, mouse, or modem is on COM1, |
- | then COM2 is available for user logins: |
- | (NOTE the lower case 'L', below) |
- | |
- | C:\VMiX> VM_BOOT set remote -l2 / (etc.) |
- | |
- | ----- if your printer, mouse, or modem is on COM2, |
- | then COM1 (VMiX default) is available for logins: |
- | |
- | NO COMMAND NEEDED |
- | |
- | ----- if you are using both COM1 and COM2, |
- | then set VMiX to COM3 to avoid interferance: |
- | (NOTE the lower case 'L', below) |
- | |
- | C:\VMiX> VM_BOOT set remote -l3 / (etc.) |
- | |
- | or, to globaly disable all login polling use: |
- | |
- | C:\VMiX> VM_BOOT set remote -x / (etc.) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | ----- if you are connecting at a baud rate other than |
- | 9600 baud (VMiX default), set the baud with: |
- | |
- | C:\VMiX> VM_BOOT set remote -l2/set baud -c2 2400/ |
- | (etc.) |
- | |
- | VMiX supports interrupt driven serial I/O up to |
- | 115,200 Baud. For information on these and the |
- | 'set baud -c' command see TECHREF.DOC |
- | |
- | ----- if you want to enable passwords and have entered |
- | them into your VMiX.INI file, as well as specified |
- | 'rshell' or the name of your autostart program(s) |
- | to run after a valid logon: |
- | |
- | C:\VMiX> VM_BOOT set remote -l2 vsetup / |
- | set baud -c2 2400 / (etc.) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | MULTIUSER CABLING |
- | |
- | The RS232 cabling for COM1 or other terminal/modem serial |
- | ports where you intend to have VMiX loggins, should be cons- |
- | tructed depending on whether the host PC will be connected |
- | to a dumb terminal or to another PC acting as a terminal. |
- | |
- | A NULL MODEM serial cable can also be used when connecting to |
- | a second PC, but will not work when connecting to a terminal. |
- | |
- | |
- | PIN PIN |
- | |
- | H 1 1 |
- | O |
- | S 2 -- - _ _ _ - -- 2 |
- | T -_ __ - - |
- | 3 __ _ - - - - _ __ 3 T |
- | S E |
- | e 4 4 R |
- | r M |
- | i .--5 5 I |
- | a .-| N |
- | l | `--6 6 A |
- | | L |
- | P | 7 ------------------------- 7 |
- | o | Also add the jumpers |
- | r | .--8 8 to the terminal side,|
- | t `-| if using a 2nd PC as |
- | `--20 20 a terminal. |
- | |
- | |
- | |
- | |
- | See Part II, Using VMiX 386, for |
- | detailed instructions regarding the |
- | use of VMiX 386 commands and options. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | VMiX STARTUP - SYSTEM OPTIONS |
- | |
- | The boot command syntax is: |
- | |
- | VM_BOOT [8086] [286] [low] [high] [quiet] [text] [ems=] |
- | [exclude=] [ / [ command ] /... ] |
- | |
- | The '/' separator is optional between options, but is |
- | required between commands. |
- | |
- | where (NOTE abbreviated syntax): |
- | |
- | 8086 option forces 8086 (real mode) operation on |
- | 80286/386/486 computers. |
- | |
- | 286 option forces 80286 (standard/protected mode) |
- | operation on 386/486 computers, instead of |
- | enhanced/protected mode. |
- | |
- | The two commands above, manually disable VMiX from |
- | attempting to set its own 80386 enhanced/protected mode |
- | environment (useful for getting around compatibility |
- | problems, on some computers and to execute newer applica- |
- | tions that require DPMI protected mode managers resident |
- | (Windows or most compilers). |
- | |
- | lo option inhibits the relocation of VMiX code/data |
- | to extended XMS memory. |
- | |
- | hi option forces the relocation of VMiX code/data to |
- | extended XMS memory, when using 8086 Mode on a |
- | 80286/386/486 computer. |
- | |
- | q option disables all start messages and retains |
- | DOS's look and feel. |
- | |
- | text option disables the loading of graphics fonts in |
- | 8086 Mode to save usable memory. |
- | |
- | ems= option allows an EMS segment to be specified for |
- | VMiX own data use. On 386 computers, this is not |
- | needed since VMiX automatically relocates data |
- | areas to its own EMS and XMS managed areas. |
- | However, VMiX could select the wrong EMS segment, |
- | after scanning for ROMs or RAM in upper memory, |
- | and crash. |
- | |
- | This option allows a safe upper memory segment to |
- | be manually selected (38Kb free size is required).|
- | |
- | (ems=ffff, totally disables VMiX use of the upper |
- | memory EMS area.) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | On 8086 PCs or 286 ATs, if an EMS board is |
- | installed and an EMS manager is driver is present,|
- | VMiX can use EMS to reduce its low memory size |
- | by 38Kb. |
- | |
- | The general command format is 'EMS=????', |
- | where ???? is the Hex Segment Address of the EMS |
- | area (i.e., VM_BOOT ems=d000), 38Kb of contiguous |
- | space is required. On 386 ATs, VMiX automatically|
- | uses its own EMS emulator unless you specify |
- | ems=ffff. |
- | |
- | exc= option allows the user to exclude a block of |
- | extended memory, starting after the first megabyte|
- | of conventional memory, by specifying a size in |
- | kilobytes to skip. This excluded area will not be|
- | touched by VMiX. |
- | |
- | The general command format is 'EXC=????', |
- | where ???? specifies the number of 1Kb blocks of |
- | extended memory to exclude. |
- | |
- | If VMiX detects a resident XMS memory manager like|
- | HIMEM.SYS, it will automatically exclude memory |
- | that is already in use. |
- | |
- | [ command ] any valid DOS or VMiX shell command, |
- | separated by a '/' |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | QUICK START TO VMiX MULTITASKING |
- | |
- | To load the VMiX system, as you get familiar with it, |
- | just type at the DOS prompt: |
- | |
- | C:\VMiX> VM_BOOT set remote -x |
- | |
- | or, |
- | |
- | C:\VMiX> VM_BOOT /q /set remote -x |
- | |
- | The first form is preferred, because it offers a nicer |
- | interface than DOS. The second form does not change |
- | the DOS interface, but converts DOS to a multi-user and |
- | multitasking environment. |
- | |
- | In both cases, use of the COMM ports for logins is dis- |
- | abled, until you determine which ports are not going to |
- | be used by other programs, mice, or modems and VMiX is |
- | free to takeover them. |
- | |
- | VMiX has an .INI file, which is shipped fully commented |
- | with examples. As shipped, VMiX.INI is always automati- |
- | cally processed, but does nothing. Once you are familiar |
- | with VMiX, you can include the startup commands that your |
- | installation needs, to arrive at the configuration and |
- | active programs you desire. Note that any command line |
- | parameters after VM_BOOT.EXE are executed after the .INI |
- | file is processed. |
- | |
- | Now, for your first multitasking, type 'dir' and press |
- | Shift-ENTER, instead of the usual plain 'ENTER'. |
- | The typed command or program will be multitasked in a |
- | window. After it completes, the window might be left |
- | behind; press Shift-Tab to clear it. |
- | |
- | If you had pressed 'ENTER' with BOTH Shift keys down, |
- | for the 'dir' command above, then the task would have |
- | been executed full screen, in its own virtual flippable |
- | screen. To flip screens, or switch between windows, |
- | just press Shift-Tab. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | Cont'd |
- | ------ |
- | |
- | The TECHREF.DOC manual is big and spread out, but it |
- | describes each VMiX command in more detail. |
- | |
- | Basically, these are the commands that you must master |
- | FIRST, to start using the multitasking features right- |
- | away. |
- | |
- | |
- | ? Pressing '?' will display a list of avail- |
- | able VMiX commands. Typing a VMiX command |
- | that requires additional parameters, will |
- | display usage information. Any command can |
- | be abbreviated to 2 or more characters. |
- | |
- | |
- | exec This command allows you to partition the |
- | use of your PC's memory between tasks. |
- | By default, on 8088 and 80286 computers, |
- | VMiX partitions each new DOS task into |
- | 224Kb chunks of available memory. On the |
- | 80386 the default partition size is 600Kb. |
- | |
- | To override the defaults, you might type: |
- | exec -m128 |
- | |
- | this sets the partition size to 128Kb. |
- | Any new program, after that, will only see |
- | a maximum of 128Kb available, until the next|
- | 'exec -m' reduces or expands the current |
- | limit. |
- | |
- | In 286 processors, when you intend to use |
- | the 'swap' command to move programs back and|
- | forth from extended memory, it is usually |
- | better to enable all of low memory before |
- | starting the first task ('exec -m640'). You |
- | will then use 'swap' to move the task to |
- | extended and all the low memory will be |
- | freed for another new task. Most programs |
- | will work better if you use the '$$' prefix |
- | described below. |
- | |
- | In 80386 processors, selecting a partition |
- | size smaller than the 600Kb default, will |
- | cause new tasks to use the parent's memory |
- | partition and will not be mapped to their |
- | own 640Kb, from the extended memory pool. |
- | |
- | |
- | do This command allows you to specify a new |
- | DOS task. 'do' is short for 'dosjob'. |
- | To execute BASIC in a window, you would |
- | type: |
- | do c:\basic |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | The 'dosjob' command can be omited, if you |
- | press Shift-ENTER, instead of just 'ENTER' |
- | after the command. |
- | c:\basic (press Shift-ENTER) |
- | |
- | 'do' is the basic VMiX command to start a |
- | new and separate process. A forward slash |
- | '/' must preceed any VMiX shell command |
- | given after the 'do'. The '/' must NOT be |
- | used, if the command is for DOS. |
- | |
- | |
- | do -W To execute BASIC and give it the full |
- | screen, you would type: |
- | do -W c:\basic |
- | |
- | The keyboard shortcut is to press Shift- |
- | ENTER (with both Shift keys pressed, for |
- | full screen) instead of just 'ENTER'. |
- | |
- | c:\basic (press Shift-Shift-ENTER) |
- | |
- | On the 386/486 the -W switch virtualizes |
- | the video segment of the task, allowing it |
- | to be moved to and from the foreground |
- | without disturbing the display of other |
- | tasks. |
- | |
- | On 8088 or 286 systems you should specify a |
- | new video page or video mode to obtain |
- | a virtualized and separate console for the |
- | task (otherwise the output of one task could|
- | bleed through to that of another): |
- | do -W / set video -p / filespec |
- | or, |
- | do -W / set video -m / filespec |
- | |
- | |
- | Shift-ENTER This is equivalent to the 'do' command. |
- | You press Shift-ENTER at the end of a |
- | command to multitask it in a new window. |
- | |
- | Shift-Shift-ENTER This is equivalent to the 'do -W' |
- | command. You press ENTER with both Shift |
- | keys held down at the end of a command to |
- | multitask it with a new full screen. |
- | |
- | Shift-TAB Once you have started several windows, or |
- | full screen tasks, you will need to move |
- | the keyboard and/or video display between |
- | them, so that input to each task can be |
- | safely directed to only that task. You |
- | move the keyboard and foreground display, |
- | in round-robin fasion by pressing the |
- | <SHIFT> and <TAB> keys simultaneously. |
- | Shift-Tab will also clear any defunct |
- | window partitions, when there is only one |
- | shell active. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | Some tasks disable the cursor blinking, so |
- | its difficult to determine which task is |
- | actively receiving input. In those cases, |
- | you should enable cursor emulation with: |
- | set system -c |
- | |
- | and/or enable the console status line with: |
- | set video -s |
- | |
- | do /rshell The easiest way to operate in the VMiX |
- | environment is to create a new virtual DOS |
- | machine every time you wish to perform a |
- | new task. Anytime you use the 'dosjob' cmd |
- | you are creating a new virtual DOS machine, |
- | however, it is more flexible to start a new |
- | shell from which to launch DOS commands |
- | than just to have it do a program. To clone |
- | the startup (root) command shell into a 2nd |
- | shell, you would type: |
- | do /rshell or do -W /rshell |
- | |
- | The / tells VMiX, this is not a command for |
- | DOS but for VMiX. VMiX will ask you for |
- | a login name. This is the name that the |
- | VMiX status line will display when this task|
- | is at the foreground for kbd input, type: |
- | su |
- | |
- | This is a reserved name for a VMiX operator |
- | with 'kill' and 'swap' process priviledges. |
- | |
- | do . To clone a DOS command shell as the 2nd |
- | window, you would type: |
- | do . |
- | or, |
- | . (and press Shift-ENTER) |
- | |
- | To close the window, type from DOS: |
- | exit |
- | |
- | NOTE THAT THE VMiX SHELL PROMPT DIFFERS |
- | FROM THE DOS SHELL PROMPT IN THE SINGLE |
- | SPACE THAT FOLLOWS THE PROMPT. |
- | |
- | From the VMiX Shell |
- | a directory request would look like: |
- | C:\VMiX> dir |
- | From DOS it would look like: |
- | C:\VMiX>dir |
- | |
- | |
- | set The 'set' command gives you access to all |
- | the VMiX configuration options. |
- | To display a list of all the commands and |
- | arguments associated with the 'set' command |
- | enter 'set' from the keyboard. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | $$ When not in 386 Mode, you might find that |
- | some programs might crash or fail to execute|
- | correctly. To provide system protection, |
- | where changes effected by one task to the |
- | system interrupt table might interfere with |
- | the interrupts handlers expected by a second|
- | task, precede the filename and path with the|
- | characters '$$': |
- | $$[drive:][path]filename |
- | or, |
- | do $$[drive:][path]filename |
- | |
- | |
- | NOW THAT YOU KNOW EVERYTHING, YOU CAN CHOOSE TO FORGET |
- | ALL ABOUT IT AND INSTEAD, USE THE VMiX PULL-DOWN MENUS |
- | BY TYPING, AFTER VMiX STARTS: |
- | |
- | C:\VMiX> c:\vmix\vw |
- | |
- | See the 'GENERAL INSTRUCTIONS section above and |
- | TECHREF.DOC for VW operating information. |
- | |
- | VW requires your PATH to include the directory where |
- | the VMiX utilities reside. |
- | |
- | REMEMBER THAT ANY COMMAND YOU CAN GIVE FROM INSIDE VMiX |
- | CAN ALSO BE STATED IN THE VM_BOOT COMMAND LINE OR INCLUDED|
- | IN THE [startup] SECTION OF YOUR VMiX.INI FILE. |
- | |
- | Congratulations, you are now a certified VMiX SysOp. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | APPLICATION NOTE: Using the BRIEF EDITOR |
- | ---------------------------------------- |
- | |
- | NOTE for Brief Editor users: if running Brief from a |
- | remote ANSI terminal session, start the editor with the |
- | -p flag in the command line, to force Brief to only use |
- | the first video page. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | APPLICATION NOTE: Using COMMUNICATIONS or BBS SOFTWARE |
- | ------------------------------------------------------ |
- | |
- | NOTE if you intend to run drivers that use IRQ2 or |
- | IRQ5, like a network or bisynch communications card: |
- | load the software (i.e., IPX and NET5 for Novell) BEFORE |
- | VMiX is loaded. This will be fixed in a future version. |
- | |
- | Communications programs that use IRQ3, IRQ4, or IRQ7 |
- | will work correctly regardless of when they are loaded. |
- | |
- | IF THE PROGRAM OR DRIVER PORTION THAT USES COMM PORTS |
- | IS INSTALLED BEFORE VMiX, YOU DO NOT NEED TO GIVE VMiX |
- | ANY SPECIAL COMMANDS. |
- | |
- | IF THE PROGRAM OR DRIVER PORTION THAT USES COMM PORTS IS |
- | IS EXECUTED AFTER VMiX, YOU NEED TO ISSUE THE VMiX |
- | COMMAND 'set remote -i' ONCE, ANY TIME BEFORE EXECUTING |
- | YOUR PROGRAM. |
- | ______________________________________________________ |
- | |
- | If you are loosing characters during communications, |
- | do not use the 'set vi -s' and 'set sys -c' commands |
- | at startup, since these 2 commands degrade performance. |
- | ______________________________________________________ |
- | |
- | NOTE if you are running a BBS communications fossil: |
- | OpusComm Version 5.30+ works the best. |
- | |
- | X00.SYS also works, but whereas file downloads do not |
- | loose any data, there seems to be characters lost at |
- | the callers BBS screen (uses different fossil call) |
- | when the driver is locked ABOVE 9600 baud. |
- | |
- | BNU does not loose screen characters or file transfer |
- | data, but seems to hang when other tasks are running. |
- | BNU Version 1.70 is available from our BBS. |
- | |
- | NOTE if you are running Binkley Version 2.55+: |
- | you must leave some extended memory free for Binkley. |
- | Start VMiX with the command line VM_BOOT exclude=500, |
- | to exclude 500 Kbytes from VMiX's pool, for Binkley. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | APPLICATION NOTE: Using QBASIC |
- | ------------------------------ |
- | |
- | NOTE for QBasic users: most Basic interpreters and |
- | compilers reset the clock tic to 18.2 times per second, |
- | this will result in slow multitasking. To correct this, |
- | after QBasic starts, Shift-Tab to an available VMiX |
- | shell and enter the command 'init clock' to reset the |
- | timer tic to its normal VMiX rate of 90 times per sec. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | APPLICATION NOTE: Using STACKER |
- | ------------------------------- |
- | |
- | NOTE for Stacker users: VMiX currently will not read |
- | a disk file correctly (on a compressed or uncompressed |
- | volume) if the stacker driver is installed in your |
- | CONFIG.SYS file. (This is a reported problem, we do not |
- | have compression software, so have not verified this). |
- | |
- | Problem will be fixed in an upcomming release. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | IMPORTANT NOTICE |
- | |
- | VMiX STARTUP PROBLEMS: |
- | |
- | We have found that the following are the most frequent |
- | causes of VMiX 386 failure. |
- | |
- | a) System locks after starting a second window or after |
- | logging from a remote terminal, and the screen is |
- | about to scroll (i.e., during a DIR): |
- | |
- | You might be using an ANSI.SYS driver in CONFIG.SYS |
- | that does not support multiple windows or is otherwise |
- | incompatible with VMiX. We provide VMANSI.COM, a TSR |
- | that can be executed before VMiX, to install an ANSI |
- | driver. This driver does not currently support |
- | keyboard redefinition. You can also use Quarterdeck |
- | Office System's DVANSI.COM (for DESQview) with VMiX. |
- | |
- | b) The screen clears during VMiX bootup and the System |
- | hangs, or VMiX displays the Warning Message '8086 Mode |
- | another 386 PM detected': |
- | |
- | The contents of your CONFIG.SYS specify a device |
- | driver that uses extended memory in conflict with |
- | VMiX in 386 Mode. (for example, QEMM.SYS, 386MAX.SYS, |
- | EMM386.SYS, or SMARTDRV.SYS) |
- | |
- | Refer to the manual for the recommended contents of |
- | CONFIG.SYS. |
- | |
- | c) VMiX slows down to a crawl or just hangs: |
- | |
- | Failure to reassign VMiX's default port for user |
- | logins, COM1, to another port number, when that port |
- | is already in use (modem, mouse, etc.). Recommend to |
- | start VMiX with a non-existent port for user logins: |
- | (NOTE the lower case 'L', below) |
- | |
- | C:\VMIX> VM_BOOT set remote -l4 (ie., COM4) |
- | |
- | or just turn remote logins completely OFF: |
- | |
- | C:\VMIX> VM_BOOT set remote -x (ie., Remote Off) |
- | |
- | d) System fails to boot completely, crashing before |
- | giving you a prompt, but after startup messages: |
- | |
- | In 386 Mode, VMiX incorrectly maps your ROM and upper |
- | memory usage. VMiX loads portions of itself to the |
- | first available area between C000 and F000. It is |
- | possible for VMiX to erroneously identify an area in |
- | use, as being free. In that case, VMiX will fail to |
- | boot. Force VMiX to only use a known free area, with |
- | the startup command: |
- | |
- | C:\VMIX> VM_BOOT ems=D000 (ie., if D000 to D7FF free) |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | or, |
- | |
- | C:\VMIX> VM_BOOT ems=FFFF (ie., do not touch EMS area) |
- | |
- | e) Using 'swap' with a previously loaded external program |
- | or TSR that uses extended memory, when VMiX is in 286 |
- | Mode and has not been told to reserve extended memory |
- | already in use, at boot time: |
- | |
- | C:\VMIX> VM_BOOT exclude=500 |
- | |
- | If 500Kb are already in use. |
- | |
- | f) System fails to boot and the screen stays blank: |
- | |
- | Cable connected to COM1 port which causes VMiX port |
- | test to hang during startup. Recommend to test VMiX |
- | with the serial cable disconnected during the VM_BOOT |
- | process. Make a new cable as described in manual or |
- | use a null modem cable. |
- | |
- | g) System or application hangs while running a communica- |
- | tions program: |
- | |
- | Some communications program like ProComm or Telix, |
- | that install their own COMM port interrupt routines |
- | AFTER VMiX is booted, require that you issue the |
- | command 'set remote -i' before running the application.|
- | The command is a toggle, so it is usually only used |
- | once, at bootup. Also, refer to item c) above. |
- | |
- | C:\VMIX> VM_BOOT set remote -x/set remote -i |
- | |
- | h) Can run DOS commands, but can not start any |
- | application. |
- | |
- | Might have a compatibility problem between VMiX and a |
- | compression driver in CONFIG.SYS (like Stacker or |
- | Doublespace disk drive compression). Remove the |
- | 'device=' line with the compression driver from your |
- | CONFIG.SYS file and use VMiX only with files on an |
- | uncompressed disk volume. |
- | |
- | i) Cannot run a second application or System locks when |
- | starting a second application: |
- | |
- | Some 386 CPU's (particularly SX's) cannot virtually |
- | page the first 4Kb of memory. If VMiX will not run |
- | a second task, this might be the case. To get around |
- | this problem, use the command 'set dos -s0' to tell |
- | VMiX not to page any low memory segments. |
- | |
- | j) Cannot run a second application or task locks when |
- | starting a second application: |
- | |
- | If you have a SCSI hard drive that uses DMA, or other |
- | device driver installed disks (not BIOS installed in |
- | your system's CMOS, by setup), then VMiX might fail |
- | to identify the drive as requiring enhanced Double- |
- | buffering in protected mode. When the drive is |
- | accessed, garbage is read and the application hangs. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | Force VMiX to use enhanced Double-buffering for the |
- | drive, with the startup command: |
- | |
- | C:\VMIX> VM_BOOT set pool -d |
- | |
- | k) Cannot login or get no response at a remote terminal: |
- | |
- | Your cable might be incompatible (See 'Multitasking |
- | Cabling', in the manual). To test your cable, from |
- | DOS type the following commands (assuming COM1): |
- | |
- | mode com1: 9600,n,8,1 <ENTER> |
- | mode lpt1:=com1 <ENTER> |
- | |
- | then, press <Ctrl><P> to echo the screen to COM1 and |
- | do a DIR. If the screen hangs, then the cable is not |
- | responding correctly. |
- | |
- | l) VMiX hangs during boot after displaying the message |
- | 'Executing startup ...': |
- | |
- | Note: When VM_BOOT executes it will look for the file |
- | VMiX.INI in the VMiX directory. If it finds the INI |
- | file, it will execute the commands given in the file's |
- | [startup] section. Check the commands found there for |
- | correctness. |
- | |
- | m) VMiX refuses to load high when the user specifies |
- | 'loadup vm_boot.exe' or the system hangs: |
- | |
- | Two possibilities, there is not enough upper memory |
- | available or the user did not specify 'ems=ffff' in |
- | the initial vm_boot command. |
- | |
- | If there is not 164Kb upper memory area available, |
- | it might still be possible to loadup the smaller |
- | version of VMiX, vm_b.exe, which requires only 140Kb |
- | free. |
- | |
- | 'ems=ffff' must be given only in the initial startup |
- | command line and not in the VMiX.INI [startup] section |
- | or in the 'loadup vm_boot.exe' command: |
- | |
- | correct usage: |
- | |
- | C:\VMIX> vm_boot ems=ffff/loadup vm_boot |
- | |
- | or, for the small version: |
- | |
- | C:\VMIX> vm_b ems=ffff/loadup vm_b |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | n) The following vendor's 386 computers are known to |
- | crash (incompatible) or not crash (compatible) VMiX |
- | during 386 protected mode startup: |
- | |
- | Incompatible Compatible |
- | ---------------- ------------------- |
- | CompuAdd 386 ACER 386/486 |
- | HP Vectra 386 ALR VEISA 486/33 |
- | IBM PS/2 30 ALR MPS 386/33 |
- | IBM PS/2 50 ALR PowerFlex 386/486 SX |
- | Opti 386 SX AST BRAVO 386/486 |
- | Zenith 386 AST Premium 386/486 |
- | AT&T 386 |
- | Cheetah cAT 386/20 |
- | Cheetah Gold 486 |
- | COMPAQ 386/25 |
- | COMPAQ 386/SX |
- | COMPAQ 486/33 |
- | COMPAQ Deskpro |
- | COMPAQ LTE |
- | COMPAQ SystemPro |
- | Dell System 310 |
- | Dell System 486 |
- | DTK 386 |
- | Epson Equity |
- | Everex 386/16 |
- | Everex Step 386/25 |
- | Everex Tempo 486/20 |
- | Gateway 2000 386/20 |
- | IBM PS/2 60/70/80 |
- | Micronics 386 |
- | Monolithic 386/16 |
- | Northgate 386 |
- | Olivetti M386/20 |
- | PC Brand 386/33 |
- | Tandy 1000 |
- | Tandy 5000MC |
- | Toshiba 5100 |
- | ZEOS 386/486 |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | SHIPPING LIST |
- | |
- | The VMiX 386 System consists of the 39 files described below. |
- | |
- | These files reside in the four self-extracting archives: |
- | |
- | VMIX???.EXE (Shareware distribution VERSION ???) |
- | VMIX386.EXE (Shareware, only for 386/486 computers) |
- | Available from our BBS |
- | VMIX386.EXE (Registered Owners ONLY) |
- | FOR8086.EXE (Registered Owners ONLY) |
- | VMIXAPI.EXE (Registered Owners ONLY) |
- | |
- | |
- | EXECUTABLE or OBJECT FILES |
- | |
- | - VM_BOOT.EXE - |
- | The complete VMiX startup program. |
- | To start, type VM_BOOT from DOS's C> prompt and press |
- | ENTER. |
- | |
- | - VM_B.EXE - |
- | This is a 386 coded shareware version of the VMiX startup |
- | program, which we have made as small as possible to save |
- | memory (lacks some functionality found in VM_BOOT.EXE). |
- | To start, type VM_B from DOS's prompt and press ENTER. |
- | |
- | - DPATH.EXE - |
- | Utility executed by user to set the directory search PATH |
- | for data files (not usually needed, since VMiX now vir- |
- | tualizes the default directory of each task). |
- | |
- | Use DOS's 'PATH =' or 'SET PATH =' for executables. |
- | Use VMiX's 'DPATH =' or 'SET DPATH =' for data files. |
- | |
- | - DSTAT.EXE - |
- | Utility executed by user to view device and channel |
- | status. |
- | |
- | - LOADUP.EXE - |
- | Utility to load TSRs, from inside VMiX, to upper memory |
- | above 640Kb. Will also relocate VMiX to upper memory. |
- | |
- | - MONITOR.EXE - |
- | Debugging utility used to monitor process information, |
- | system memory and open files status. |
- | |
- | - OUTSIDE.EXE - |
- | DOS shell spawning utility for sysops running BBS |
- | software under VMiX. This utility can be used by a bbs |
- | caller to exit via the modem to a VMiX shell. |
- | The syntax is: |
- | outside.exe [-c ????] |
- | where ???? is the COMM port (default is COM1) |
- | |
- | - PS.EXE - |
- | Utility executed by user to view process status. |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | Cont'd |
- | ------ |
- | |
- | - VMANSI.COM - |
- | Utility executed before VMiX to install an ANSI console. |
- | A multitasking compatible alternative to ANSI.SYS |
- | |
- | - VSETUP.EXE - |
- | Utility automatically executed by VM_BOOT.EXE, at startup,|
- | to process the VMiX configuration file (VMiX.INI). |
- | Also, optionally used with the command 'set remote -l' to |
- | configure COMM port logins (passwords and auto-start). |
- | |
- | - VT.EXE - |
- | Utility executed by user to start a remote session at a |
- | second, serialy connected, VMiX host. |
- | |
- | - VW.EXE - |
- | Utility executed by user to start the pull-down menus |
- | interface to the VMiX shell. |
- | |
- | - VMiX.INI - |
- | Sample VMiX configuration file (editable text file) |
- | |
- | - SYSGATE.OBJ - |
- | Link object file for accessing the VMiX API (Application |
- | Programming Interface). |
- |_______________________________________________________________|
-
- _______________________________________________________________
- | |
- | SOURCE FILES DOCUMENTATION FILES |
- | |
- | DPATH.ASM DPATH.DOC |
- | LOADER.ASM READ.ME |
- | SYSGATE.ASM VMiX.DOC (this file) |
- | VMANSI.ASM REVISION.LOG (upgrade history) |
- | VT.ASM TECHREF.DOC |
- | DSTAT.C |
- | LOADUP.A |
- | LOADUP.C |
- | MONITOR.C |
- | OUTSIDE.C |
- | PS.C |
- | VSETUP.C |
- | VW.C |
- | C_BIOS.H |
- | $_CONFIG.H |
- | $_KERNEL.H |
- | $_MEM.H |
- | $_PROC.H |
- | IO_CHAN.H |
- | IO_IRP.H |
- | IO_OBJ.H |
- |_______________________________________________________________|
-
-
-
- VMiX COMMAND LOOK-UP - QUICK REFERENCE
-
-
- |ROOT |DEBUG....................................|
-
- |LEVEL..|LEVEL..|LEVEL............................|
- | 0 | 1 | 2 |
- |_______._______._________________________________|
- | . . |
- |[debug]. . |
- | |set . |
- | . |baud |
- | . . -c " sets COMM port: chan, |
- | . . baud, parity, word, stop"|
- | . |dos |
- | . . -e " toggles DOS environment |
- | . . protection ON/OFF" |
- | . . -f " toggles DOS process file |
- | . . inherit ON/OFF" |
- | . . -n " sets DOS INT21 function |
- | . . maximum nesting level" |
- | . . -p " sets DOS current process |
- | . . PSP: nuPSP(seg)" |
- | . . -s " sets DOS virtual size |
- | . . (4Kb blks)" |
- | . |font |
- | . . -t " sets font type (0 - 3)" |
- | . |pool |
- | . . -a " adjusts program memory: |
- | . . MCB(seg), nusize(para)" |
- | . . -d " toggles SCSI DMA double |
- | . . buffering ON/OFF" |
- | . . -m " sets program partition |
- | . . size (0 - 1024Kb)" |
- | . . -o " sets program memory |
- | . . owner: MCB(seg), |
- | . . nuPSP(seg)" |
- | . |process |
- | . . -b " sets shell buffer size |
- | . . (0 - 127)" |
- | . . -d " sets process wait: |
- | . . seconds |
- | . . -h " toggles hardware |
- | . . priviledge ON/OFF" |
- | . . -q " sets queued process con- |
- | . . tention timer (0 - 255) |
- | . . -s " toggles system |
- | . . priviledge ON/OFF" |
- | . . -t " sets duration of process |
- | . . time slice: ticks - 1" |
- | . . -w " sets I/O wait before |
- | . . preemption: count" |
- | . |remote |
- | . . -a " toggles polling of all |
- | . . channels ON/OFF" |
- | . . -c " sets remote console |
- | . . channel" |
- | . . -i " toggles fast RS232 |
- | . . ON/OFF" |
- | . . -l " sets terminal login |
- | . . channel" |
- | . . -x " toggles terminal logins |
- | . . ON/OFF" |
- | . |system |
- | . . -c " toggles cursor emulation |
- | . . ON/OFF |
- | . . -d " sets frequency of |
- | . . scheduler: ticks - 1" |
- | . . -m " toggles operator |
- | . . messages ON/OFF" |
- | . . -s " toggles swapper ON/OFF |
- | . . -t " toggles scheduler ON/OFF |
- | . . -v " toggles 736Kb DOS space |
- | . . ON/OFF" |
- | . . -w " sets shutdown wait: |
- | . . seconds" |
- | . |terminal |
- | . . -t " sets terminal type (0-9) |
- | . |video |
- | . . -c " sets video bg/fg colors" |
- | . . -C " sets window bg/fg colors"|
- | . . -m " sets video mode (0 - 18)"|
- | . . -p " sets vide0 page (0 - 3)" |
- | . . -s " toggles status line |
- | . . ON/OFF" |
- | . . -w " sets window size: |
- | . . row0, col0, row1, col1" |
- | . . -W " regenerates screen |
- | . . windows (Shift-Tab moves |
- | . . kbd between tasks)" |
- | |init |
- | . |comm |
- | . . -c " sets COMM port: chan, |
- | . . baud, parity, word, stop"|
- | . |print |
- | . . -p " inits parallel port:chan"|
- | . |clock " resets the VMiX system |
- | . timer 11msec clock" |
- | |examine |
- | . |mcb |
- | . |status |
- | |assign |
- | . " assigns to a process a resource: |
- | [process ID], obj type, |
- | port or size or process ID" |
- | . " assigns to a process a different |
- | STDIO channel: [process ID], |
- | 'CHANNEL', channel ID" |
- | . " assigns to a process an alternate|
- | channel: [process ID], |
- | 'ALTCHANNEL', channel ID" |
- | . |gdt |
- | |deassign |
- | . " deasigns a channel: channel ID" |
- | . |gdt |
- | . |memory |
- | |quit |
- |rshell |
- |remote |
- | -a " toggles global polling ON/OFF" |
- | -c " sets remote console channel: channel ID" |
- | -i " toggles fast RS232 ON/OFF" |
- | -l " sets terminal login channel: channel ID" |
- | -x " toggles terminal logins ON/OFF" |
- |swap |
- | " swaps a process: process ID" |
- |chprio |
- | " changes process priority: process ID, |
- | new priority" |
- |[exec] |
- | -a " adjusts program memory: MCB(seg), |
- | nusize(para)" |
- | -d " toggles SCSI DMA double buffering ON/OFF"|
- | -m " sets program partition size (0 - 1024Kb)"|
- | -o " sets program memory owner: MCB(seg), |
- | nuPSP(seg)" |
- | |path " utility displays/sets |
- | . program file search path"|
- | |dpath[.exe] " utility displays/sets |
- | . data file search path" |
- | . -v " sets verbose mode (default)" |
- | . -q " sets quiet mode" |
- | . -r " allows data read only" |
- | . -w " allows data read/write (default)"|
- | . -h " help" |
- | |dstat[.exe] " utility displays all |
- | . VMiX objects/channels" |
- | . -a " selects only assigned objects" |
- | . -r " selects only free objects" |
- | |loadup.[exe] " VMiX loadhi utility to |
- | . place TSRs above 640Kb" |
- | . [/seg=] " forces load to specified |
- | . segment" |
- | . [/size=] " specifies size for upper |
- | . memory block in Kbytes" |
- | . [/help] " displays help" |
- | . " loads program hi: filespec" |
- | |monitor[.exe] " utility monitors process |
- | . or system: process ID" |
- | . -f " monitors all open files" |
- | . -m " displays 1 megabyte memory map" |
- | . -p " displays VMiX memory pool info" |
- | . -r " monitors process registers and |
- | . system memory: process ID" |
- | |ps[.exe] " utility displays all |
- | . processes status" |
- | |vmansi[.com] " utility to install an |
- | . ANSI video driver" |
- | |vsetup[.exe] " utility to process |
- | . VMiX.INI file" |
- | |vt[.exe] " utility to login to a |
- | . remote VMiX host" |
- | |vw[.exe] " VMiX pull-down menus |
- | . utility" |
- | . -i " interactive keyboard mode" |
- | . -m " LCD or BW monochrome mode" |
- | . -bw " LCD or BW monochrome mode" |
- | " executes: MS-DOS command" |
- |dosjob |
- | " starts a virtual machine: MS-DOS command |
- | or / VMiX command" |
- | [-W] " gives process the full screen: MS-DOS |
- | command or / VMiX command" |
- |spawn |
- | -c " sets channel for STDIO and executes |
- | command: channel ID / command line" |
- |kill |
- | " terminates a process: process ID" |
- |quit |
- |_________________________________________________|
-
-
- KEY:
- ___
-
- : arguments after a ':' indicate command data that follows
-
- [ ] keywords enclosed in '[ ]' indicate optional parameters
-
-
- VMiX TERMINAL - IBM FUNCTION KEY EMULATION
-
- _________________________________________________
- | |
- | Press ^F (1 beep) PC Keyboard emulation ON |
- | Press ^F again (2 beeps) emulation OFF |
- | |
- | |
- | for press |
- | |
- | IBM PC KEY TERMINAL KEY |
- | |
- | [F1] 1 |
- | [F2] 2 |
- | [F3] 3 |
- | [F4] 4 |
- | [F5] 5 |
- | [F6] 6 |
- | [F7] 7 |
- | [F8] 8 |
- | [F9] 9 |
- | [F10] 10 |
- | |
- | <Ctrl>[Break] ^C |
- | <Ctrl>[NumLock] ^S |
- | <Ctrl>[F3] ~ |
- | [PgUp] + |
- | [PgDn] - |
- | [Ins] ^I |
- | [Del] ^D |
- | [End] ^E |
- | [UP] ^J see note|
- | [DOWN] ^K see note|
- | [LEFT] ^H see note|
- | [RIGHT] ^L see note|
- | [Home] [Home] |
- | <Alt> <Shift> |
- | |
- | |
- | |
- | NOTE: The <Ctrl> key symbol for the terminal |
- | keyboard has been abbreviated as ^ |
- | |
- | ^F (1 beep) enables the Keypad ARROWS to work |
- | directly, when in VT-100 terminal emulation. |
- |_________________________________________________|
-
-
- When using VT.EXE as your terminal program to
- connect from one VMiX system to another, the
- above emulation is done automatically across
- your communications interface. Use your IBM
- keyboard as you would normally, from within
- VT.EXE, and the same keystroke will be signaled
- at the remote host running the application.
-
-
- ----------------------------------------------------------------------------
-
- RELEASE NOTES
- _____________
-
-
- * See the REVISION.LOG file for enhancements and bug fixes to this version.
- In Summary Version 2.90 is a new release and provides:
-
- This shareware version includes a 386 optimized VMiX which is as
- small as possible, so you can have MORE free DOS space in each virtual
- DOS machine. With this small version, you will be able to relocate the
- shareware version of VMiX to upper memory (using goloadup.bat).
-
- (See SHIPPING LIST above).
-
- - COMPATIBLE WITH MS-DOS 6.0
-
- - !!! DO NOT START NEW VERSIONS OF VMiX WITH THE COMMAND LINE:
- VM_BOOT vsetup
- THIS IS NOW DONE AUTOMATICALLY, TO PROCESS VMiX.INI
-
- - The 2 startup options, 'egacur' and 'cgacur' are no longer needed to
- fix a cursor display bug and have been removed.
-
-
- 1. Fixed a SCSI drive DMA bug which made access to the drive impossible,
- if the SCSI drive was the boot drive.
-
- Double buffering is needed for correct operation of a SCSI drive DMA.
- If your SCSI adapter does NOT use DMA, then you do not need this option.
- When in protected mode, double buffering is now activated if a SCSI BIOS
- is detected. Additionally, double buffering can be toggled ON/OFF with
- the new VMiX command 'set pool -d'.
-
- 2. Added a new command line switch for starting VM_BOOT.EXE, /quiet, that
- makes VMiX disable its normal user interface and operate from a modified
- DOS prompt that keeps all the VMiX commands, but looks more like DOS.
-
- The /QUIET or /q option is just a look and feel option that disables
- all startup messages, normally printed during boot and makes the
- look and feel more like booting a multiuser and multitasking version of
- plain DOS.
-
- 3. The DOS prompt line of a second concurrent DOS task will now display
- the process ID, PID, for that task, along with the default drive and
- path prompt. The process ID is only inserted on the prompt line of
- tasks at the console and not at user terminals or call-in users.
-
- 4. The VMiX kernel will handle context sensitive interrupt processing when
- running communicationd software. A context sensitive interrupt is a
- hardware interrupt that can occur while another task is executing,
- but needs to be serviced as if the owner task was executing at that
- time.
-
- VMiX currently virtualizes IRQs #3, #4, and #7. The first two are
- normally used by the COM ports and the last by network or asynchronous
- adapter cards. IRQs #3 and #4 are accessed via VMiX channels 1 - 4
- (the COM ports 1 - 4) and IRQ #7 is accessed via channel 5 (LPT1).
-
- We have improved this capability (see REVISION.LOG).
-
- You can now run a communications program in one 386 Mode partition
- and something else in another, while conducting a download or other
- serial or network communications.
-
- Note: Communications programs are very sensitive to disk I/O by
- other tasks, this may interfere with high baud rate links !!!
-
- To enable context sensitive interrupts on IRQ #3 or #4, you MUST invoke
- the command 'set remote -i' if the baud rate is lower then 19.2 KBaud.
- If you use the 'set baud -c ....', to set a Baud rate above 9600, then
- context sensitive communications are automatically enabled.
-
- Context sensitive interrupts on IRQ #7 devices are automatically
- enabled. You can optionally use the assign command to ensure that
- a task is the owner of the interrupts (i.e., installed the driver).
- Note that the IRQ #7 channel is always 5 (the LPT1 port).
- For example, 'assign 2 altchan 5' will assign channel 5 to process
- ID #2, and 'assign . altchan 5' will assign channel 5 to the current
- process. The keyword 'altchan' is NOT optional for this command.
- Do not confuse this command with the 'assign channel' command,
- which redirects all video/keyboard I/O to the specified channel.
-
- IF YOU INTEND TO RUN COMMUNICATIONS PROGRAMS, start VMiX with the
- options given below (you do NOT want VMiX to poll for user logins at
- a COMM port that an application intends to use for communications):
-
- C:\VMiX> VM_BOOT set remote -x/set remote -i (disable all COMM logins)
-
- or,
-
- C:\VMiX> VM_BOOT set remote -l4/set remote -i (logins only on COM4)
-
- or,
-
- C:\VMiX> VM_BOOT set remote -i (logins only on COM1, default)
-
-
- Other VMiX commands for optimizing communications:
-
- 'chprio' - to increase the priority of a COMM program.
- Start a new task with 'do -W /rshell', login and
- then enter 'chprio . 15' to set a priority (in the
- range 2 - 31) of 15. Finally, start the program.
- (the default priority is normally 7)
-
- 'set process -q????' - where ???? is the time (count - 1) before
- a blocked task is given a big priority boost.
- (default = 175 or 1.9 sec.)
-
- NOTE: ???? is a number 0 to 255 representing the
- number of timer tick counts MINUS ONE that a task
- can block other tasks in the READY queue because
- its priority is constantly been increased by the
- VMiX preemptive scheduling mechanisms.
- This keeps tasks running interrupt intensive
- programs (like communications programs) from
- blocking totally other tasks.
-
- The default setting is 175, resulting in a
- maximum blocked delay for other tasks wanting a
- time slice of (176 * 11msec.) 1.9 seconds.
-
- A 2400 baud program will receive interrupts about
- every 3msec., causing each time an increase of
- its priority by 2. The scheduler runs every
- 11msec., thus finding the priority of that task
- higher by 6 and usually higher than other tasks,
- so without the contention timer described above,
- the current task could hog the system and not
- give other tasks a time slice.
-
- 'set process -t????' - where ???? is the time (count - 1) a task
- will own the CPU in hundreds of a second.
- (default = 0 or 1/100 sec.)
-
- 'set system -t????' - where ???? is the time (count - 1) before
- the scheduler will run again in hundreds of
- a second. (default = 0 or 1/100 sec.)
-
- 5. Programs that make direct video writes are supported at remote COMM
- port terminals (remote logins). All video memory accesses will
- be redirected to the COMM port and will not appear at the console.
- (Feature available only in 386/486 computers).
-
- Remote ANSI users will be able to see color screen displays from
- applications running in the host, and being displayed remotely.
-
- Color support slows the screen display somewhat. If you need the
- speed but not the color, select VMiX VT-100 emulation at the host,
- with the command 'set terminal -t4', but leave the remote terminal
- set for ANSI emulation.
-
- YOU DO NOT NEED AN ANSI.SYS DRIVER IN YOUR CONFIG.SYS FILE TO USE
- THE VMiX REMOTE ANSI SUPPORT. IT IS BUILT INTO THE VMiX SYSTEM, AS
- WELL AS THE OTHER TERMINAL EMULATIONS SUPPORTED.
-
- High baud rates are set for a given channel, in the same fashion as
- the standard rates, with the 'set baud -c ???? <baud rate>' or with
- 'init comm -c ???? <baud rate>'. Available baud rates are: 300, 1200,
- 2400, 4800, 9600, 19200, 38400, and 115200. The VMiX utility DSTAT.EXE
- will display the baud rate settings for all channels assigned to COMM
- ports.
-
- You can only set one COMM port at a time to use interrupt driven baud
- rates above 9600, for logins. Other COMM ports handling simultaneous
- remote logins must be configured for 9600 Baud or below. Note that
- this restriction applies only to remote logins. You can, however,
- have a program that uses a second port, while a user is logged in at
- a high baud rate.
-
- The 'set remote -a' command allows all COMM port to be polled
- simultaneously for NEW login requests. This command slows down the
- scheduler. The default and preferred method is 'set remote -l ????'
- (to poll a specific free COMM port, at a time). Once a user has
- successfully logged in, you can change the polled port to another free
- port. This method offers less overhead. Also, other COMM port devices
- might be connected that could trigger fake logins during global polling
- (ie., modems, mice, or printers).
-
- Logins can be globally enabled/disabled with the 'set remote -x' command
- toggle. The default is logins enabled.
-
- The 'set remote -l' command controls the COMM port where user logins
- are polled for (when 'set remote -a' is in effect and VMiX is polling
- all ports, this command has no effect). However, this command is
- always used to set the port that a VT session will use to connect to
- a remote VMiX host. The 'set remote -l' command is also used to
- specify a program to execute (USUALLY VSETUP.EXE) after a connection
- is established at one of the COMM ports.
-
- The 'set remote -c' commands RELOCATES the operator console that the
- VM_BOOT program used during startup to the remote channel specified.
- That means the old console device (where the initial task is always
- running) is disabled and relocated to the specified channel. You can
- use the 'assign channel' command to move it back to the original console
- device (See TECHREF.DOC). Pressing <Ctrl><F>, followed by <Ctrl><Z>
- will also return the Root process back to the startup console, but is
- not as clean as the 'assign' command.
-
- 6. VMiX supports the MS-DOS, DR-DOS, and X-DOS operating systems.
-
- DR-DOS does not pass our full stress test, but seems to work much
- better than before. Because of differences between DR-DOS and MS-DOS,
- it is not possible for VMiX to display a prompt showing the current
- default directory when using DR-DOS.
-
- Specifically, the architecture of DR-DOS does not allow different tasks
- to have different default directories. This will cause problems if you
- set different default directories for different VMiX partitions. The
- only way around this is to set an all inclusive PATH statement before
- starting VMiX (and also set an identical path for data files using the
- VMiX utility DPATH, after startup).
-
- You can load DOS to high memory (along with its BUFFERS) using the
- dos=high and device=himem.sys (hidos=on and device=hidos.sys for DR-DOS)
- commands in CONFIG.SYS. You can experiment with memory utilization
- by removing dos=high, and letting VMiX use the high memory for itself.
- The net application space remaining should be about the same.
-
- 7. The LOADUP.EXE utility allows users to move VMiX or TSRs to upper
- memory (386 MODE IS REQUIRED). The TSR will be visible only to the
- process that started it, since each VMiX task is virtually mapped to
- a separate virtual first megabyte. This means that you can have
- different (or the same) TSRs active for each partition.
-
- If you need your TSRs to be visible to all VMiX tasks, it is better
- to start the TSRs before loading VMiX.
-
- LOADUP will NOT load TSR's on 8086 or 286 computers, unless upper
- memory is already provided by EMS hardware or other EMS software.
-
- To LOADUP VM_BOOT you will need between 130 to 160 Kb of unassigned
- upper memory, usually all address space between your video ROM
- (C800 to EFFF) and the system's ROM. If some upper memory space is
- already in use by a hardware device you can still use LOADUP VM_B
- (the smaller version of VMiX) to load VMiX up, if CC00 to EFFF
- is free and you have the shareware VM_B.EXE (144 Kb), or CF00 to EFFF
- is free and you have the reg'd VM_B.EXE (132 Kb).
-
- VMiX is compatible with XMS drivers, like HIMEM.SYS and HIDOS.SYS.
- However, VMiX will not work with other 80386 virtual memory managers,
- like QEMM.SYS, WIN.COM, 386MAX.SYS, or EMM386.SYS and defaults to
- 8086 Mode when it detects them.
-
- Since you can not use another extended memory manager when using
- VMiX, the LOADUP utility has been provided to move TSRs or VMiX itself
- to upper memory. Since VMiX is not running at CONFIG.SYS time, there
- is still no way to do the same thing with device drivers, but we are
- working on it.
-
- LOADUP is not yet as smart as other LOADHI programs,
-
- The command syntax is:
-
- LOADUP [/help] [/segment=] [/size=] filespec
-
-
- TO LOAD TSRs (except VMiX itself) Hi
- ------------------------------------
-
- We recommend that you do the first TSR load with /size=128 (number of
- 1Kb blocks) and reduce the size if LOADUP reports memory unavailable.
- For subsequent TSR loads, invoke LOADUP again, this time with /size=0,
- since the upper memory block has already being assigned, but not
- necessarily all used. New TSRs will look for unused memory within the
- upper memory block assigned in the first LOADUP.
-
- When LOADUP is first invoked, you want to specify a size equal to the
- largest contiguous space available above your video ROM area (depending
- on your HDisk controller and other installed adapters, this free area
- size can vary between 0 and 160 kilobytes). If no size is given, LOADUP
- looks for 64 Kbytes in upper memory to load the TSR. The second, third,
- etc. time a TSR is loaded, you should specify a size of 0 (or, if known,
- the actual size required by the TSR). If you know what you are doing,
- you may also specify the load segment location (i.e., /segment=D000).
-
- If your TSRs requires less than 64 Kbytes, then 'LOADUP filespec' will
- work fine without any arguments.
-
- TO LOAD VMiX Hi
- ---------------
-
- The LOADUP.EXE utility will also RELOCATE VMiX TO UPPER MEMORY,
- in 386 computers. If your system has between 130 and 160 Kbytes unused
- space between the Video ROM and the System ROM, VMiX might fit there
- (depending on the Version, Shareware vs Reg'd). This reduces the DOS
- footprint of VMiX to only 38Kb, which will allow larger programs to fit
- in virtual memory partitions.
-
- To load VMiX high you must first have started a copy of VM_BOOT in
- your 386 computer with the startup parameter EMS=FFFF, so that the
- first copy of VMiX will not try to initialize EMS memory in the target
- upper memory area. To relocate VMiX requires 130 to 160 Kbytes of
- unused upper memory, from segment address C800 (or CF00) thru EFFF.
-
- If your loadup command is in the [startup] Section of VMiX.INI, the
- .INI file will be executed twice, once by the original VMiX and the
- second after VMiX starts in upper memory. However, the second loadup
- command WILL BE IGNORED, since VMiX is already loaded hi.
-
- You can not run LOADUP before VM_BOOT.EXE for the same reasons that
- you can not run LOADHI before starting (QuarterDeck's memory manager)
- QEMM.SYS.
-
- Sample command line to load VMiX to upper memory:
-
- VM_BOOT ems=ffff/loadup vm_boot ... (full version)
- or,
- VM_BOOT ems=ffff/loadup vm_b ... (smaller version)
-
- Wait until the first copy of VMiX has shutdown and the new upper memory
- copy has started. The entire process is automatic.
-
- You can enter options in the command line after 'loadup vm_boot' as
- you would, if not loading to upper memory.
-
- 8. VM_BOOT.EXE can use a very flexible configuration file, VMiX.INI,
- to assist you in configuring VMiX startup, entering passwords,
- and specifying user programs to autostart, after a remote COMM port
- login.
-
- The configuration file (optional) works in cunjunction with the
- VSETUP.EXE utility. This utility is automatically invoked by the
- VM_BOOT.EXE startup program if it finds a VMiX.INI file. It can
- also be used manually, from the command line, or appended to the
- 'set remote -l????' command.
-
- Note that any command line parameters after VM_BOOT.EXE are executed
- after the .INI file is processed.
-
- The sample VMiX.INI included, is intended as a template for you to
- make your own configuration file. VMiX.INI is a text file and can
- be edited with any editor.
-
- VSETUP currently performs 3 functions:
-
- 1) If it finds the [access passwords] Section in VMiX.INI,
- it backups the file to VMiX.BAK and encrypts the text
- passwords, changing the Section name to [encrpt passwords].
-
- 2) If a VMiX.INI file is found during startup, VSETUP will be
- executed during startup and will execute any multiple command
- lines found in the .INI file [startup] Section. This is an
- alternative to typing all startup commands with the VM_BOOT
- command line.
-
- (System Options, however, can ONLY be given at the command line)
-
- 3) The utility VSETUP.EXE (or a user program) can also be specified
- with the 'set remote -l' command. VSETUP.EXE controls password
- access and the startup of any program given in the [remote
- startup] Section in VMiX.INI. Invoking 'set remote -l' without
- specifying VSETUP.EXE will reset logins to the standard access
- method (rshell).
-
- When VSETUP is triggered by a COMM port access, (you must have
- issued a 'set remote -l ???? vsetup' command) it will prompt
- for an access password and match it against the encrypted
- password list in VMiX.INI. After verifying access, it will
- dispatch the single command line under the [remote startup]
- Section, in VMiX.INI (this single command line can have
- multiple commands, separated by a '/').
-
-
- NOTE that the eight (8) Startup System Options can ONLY be given at
- the VM_BOOT command line, and not inside VMiX.INI, since VSETUP
- runs after VM_BOOT has already started.
-
- To ensure that VSETUP.EXE can always find VMiX.INI, the best way to
- start VMiX is with a full filespec and path for VM_BOOT.EXE,
- ie., C:\VMiX\VM_BOOT (from the VMiX directory)
- then, you can change directories or reset path and VSETUP will always
- find VMiX.INI (during remote logins).
-
-
- Added the 'set process -d ????' command to allow a script to specify
- a wait interval, in seconds. (Mostly for purposes of VMiX.INI scripts.)
- We have noticed that it is better to put a small delay at the start
- of ant 'dosjob' sequence in the [startup] Section of the .INI file,
- to allow VSETUP.EXE to terminate and clear itself from memory before
- the 'dosjob' task starts dispatching DOS programs.
-
- 9. The VT.EXE remote utility allows two or more VMiX systems to serially
- link together (115.2 Kbaud maximum). This will form the basis for a
- VMiX distributed system in a network of two or more VMiX hosts.
- VT will start a remote session with the second computer via the COMM
- port currently specified by 'set remote -l ????' (you can determine the
- current setting with the 'examine status' command). You can use the
- 'set baud -c' command or the VW menus utility to set the baud rate at
- both computers, for the link. The default baud rate is 9600 baud.
-
- You will then be able to execute from host-1 any program on host-2.
- We will be adding mountable remote files systems soon.
-
- To set up a single remote session from host-1 connected to host-2
- use the following:
-
- COMMANDS GIVEN AT COMMANDS GIVEN AT
- host-1 host-2
-
- set remote -l1 set remote -l1 (COM1 for both)
- do vt.exe - (request to host-2 a session)
- login - (host-2 asks for session name)
- (you are in) -
-
- To set up dual links (one VT session on host-1 running on host-2, and
- another VT session on host-2 running on host-1 use the following:
-
- COMMANDS GIVEN AT COMMANDS GIVEN AT
- host-1 host-2
-
- set remote -l1 set remote -l1 (COM1 for both)
- do vt.exe - (host-2 session)
- login - (session name)
- press Shift-Tab - (switch to Root)
- set remote -l2 set remote -l2 (COM2 for both)
- - do vt.exe (host-1 session)
- - login (enter name)
- press Shift-Tab - (return to VT)
-
-
- VT.EXE will now support the IBM Function Keys, without the need to
- toggle emulation (See Table, below) by pressing <Ctrl><F>.
-
- NOTE: To activate (and transmit to the remote host) the IBM function
- key equivalents (like Alt-X, PgUp, up-arrow, F3, etc.) you must toggle
- IBM emulation by pressing Ctrl-F (one BEEP will be heard). Then the
- application in the VT window will respond to the special IBM keys
- (see Table below, if NOT in ANSI emulation).
-
- If ANSI emulation is ON (default), then no key translation (as given
- by the Table below) is necessary. The IBM special keys will be sent
- as usual, directly from the keyboard.
-
- When not in ANSI emulation you will need to press Ctrl-F again to
- disable IBM emulation, after the special keys are used so that the
- keyboard Shift key will act correctly (this is a side effect of
- assuming that you could be at a terminal with no IBM special keys
- to press).
-
- NOTE: If you have started a VT session and type 'set baud -c1 2400',
- you will be setting the REMOTE computer send baud rate, you will
- need to press Shift-Tab and switch to a LOCAL session to perform
- the same command for your LOCAL computer, so that both sides sync
- at the new baud rate.
-
- To quit VT.EXE press Alt-Z. This will terminate the VT program,
- but will not quit the remote session. You should 'quit' the remote
- session first (by typing 'quit'), before pressing Alt-Z.
-
- 10. Added an alternate way to start NEW TASKS MULTITASKING. Pressing
- Shift-ENTER or Shift-Shift-ENTER, will start a new task, just as if
- you had typed 'dosjob' or 'dosjob -W', correspondingly. Shift-ENTER is
- used instead of just the ENTER key, after typing a command. If both
- Shift toggles are pressed when the ENTER key is hit, the new task will
- use the FULL screen. If only one Shift is held down, the task will
- start in a new WINDOW. If the command is for VMiX, like 'rshell',
- you must preceed it with a forward '/' (i.e., '/rshell'). DOS commands
- are always entered the same as in a DOS shell.
-
- 11. VMiX supports virtualized video in 386 Mode. In 286 computers, you
- must start tasks on different video pages (see below). This eliminates
- bleed-through by applications that write directly to the screen. Tasks
- started with the 'dosjob -W' command, and all tasks started at a dumb
- terminal will execute with virtualized video segments, in 386 Mode.
- The Shift-Tab hot key will bring a virtualized task's video to the
- foreground.
-
- VMiX now handles video mode swapping between graphics and text modes.
- The Shift-Tab hot-key will switch the console between tasks running
- in graphics modes and those running in text mode. The VW pull-down
- menus program (Process Menu) will allow new shells to be started in the
- video mode of your choice (and/or video page of choice in Text Mode).
- The same can be accomplished from the command line with:
-
- 'do -W /set video -m/rshell' (for mode select)
- or,
- 'do -W /set video -p/rshell' (for page select)
-
- Video mode switching will work in non-386 computers but the previous
- mode screen contents will not be saved.
-
- 12. The VW menu shell has been greatly improved. We can now recommend
- VW for regular use. VW can be used to start other programs or to
- select VMiX options. VW is a multiple thread environment (like OS/2).
-
- VW.EXE asks for a video page or video mode when starting a new VMiX
- shell or DOS shell with FULL screen (choose page 0, when in 386 Mode).
- VW will also ask if this is to be a REMOTE session, and it will auto-
- matically start a VT session with another VMiX host, if requested.
-
- The PROCESS menu now allows the setting of COMM port baud rates.
-
- If you have a monochrome display or are using an LCD screen, start
- VW with the -m option, for B/W.
-
- VW will respond to the [Home] key by repainting the menu bar. On non-
- 386 computers, switching to tasks executing in a different video page
- or a different video modes will sometimes not restore the VW menu bar
- on return to VW, so press [Home] to redisplay.
-
- 13. On systems with EGA/VGA, an additional 96Kb of DOS program space
- is available (64Kb in monochrome mode). To toggle the additional
- program space ON/OFF, use the VMiX command 'set system -v'. The
- default is OFF, when VM_BOOT is started. This option will allow
- large programs (684Kb maximum) to be executed with VMiX (the maximum
- without this option is about 588Kb). Even though VMiX uses extended
- memory in 286/386/486 ATs/PS2s, the user partition size is limited by
- the address space of DOS, which is now expandable to 736Kb. If VMiX
- is relocated to upper memory and you use this option, 684Kb program
- space is possible.
-
- This option can only be used in text modes.
-
- 14. I/O redirection is now fully implemented. Basically, if you start
- a process (with 'dosjob'), you can then use the utility DSTAT.EXE
- (use 'dstat -a' to view channel assignments) and determine what
- channels are available to relocate your process to. Note that
- available channels are shown as belonging to process 0, the scheduler.
- Two procesess can also share the same channel. You can use the
- 'assign (object)' command to create a new channel and link it to a
- serial port (SRCSINK), to a printer port (CHRSINK), or to the console
- (SRCSINK) which VMIX refers to as port 0 (COM0). Lastly, you use the
- 'assign channel' syntax to assign a new channel to your executing
- process. The original channel of the process will remain available to
- restore the process back to its original state (See TECHREF.DOC).
-
-
- Today VMiX is 120Kb of code and 40Kb of Kernel data. 70% Microsoft C and
- 30% MASM. VMiX is (C) Copyrighted 'try before you purchase software'.
- This gives us wide distribution for a low cost, thus keeping your purchase
- price also low.
-
- ----------------------------------------------------------------------------
-
-
- When you are ready to register your version, or require:
- pricing for support,
- programming interface documentation,
- the new printed manual,
- the source code,
- site licensing,
- corporate pricing,
- or other information, please contact us.
-
- Enjoy exploring VMiX and thanks
- for supporting its development,
-
- ComSoft
- Post Office Box 36 BBS (714) 720-1139 (24 Hrs.)
- Corona del Mar, California 92625 VOICE (714) 720-1214 (8-6pm PDT)
-
-